package cn.com.dcsgo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

/**
 * UserController
 * handler如何注册?
 * 可以使用RequestMapping注解
 * 该注解可以放到类或方法上
 * 如果需要指定请求方法(Post Delete等)可以通过其method属性进行指定
 * 默认是空的即任意请求方法都可以(RequestMethod[]对与多个请求方法使用数组的形式传参即可)
 * 如果请求方法类型与注解类型不一致将导致405错误
 * 通常在类上加该注解表示该类下的方法的统一请求路径
 * 再在方法上加精确请求路径(类可以不加，但要作为handler的方法必须加该注解)
 * 路径也可以指定多个，以数组形式传参即可
 * 为了简化请求类型的指定我们还可以在方法上使用GetMapping、PostMapping等注解
 * 来进行简化。
 * value属性用于指定请求路径可以不用以斜杠开头或结束
 * 请求路径还运行使用模糊匹配 * 代表一层路径的模糊匹配 ** 代表任意层的模糊匹配
 *
 * @author Dcsgo
 * @since 2025/2/25 15:33
 */
@Controller
@ResponseBody //表示该类中的所有方法均不做视图解析，直接将返回值作为响应体返回
@RequestMapping("user")
public class UserController {

    @PostMapping("login")
    public String login() {
        return "UserController.login()";
    }

    @RequestMapping(value = "register", method = {RequestMethod.GET, RequestMethod.POST})
    public String register() {
        return "UserController.register()";
    }
}
